// 链表结点的删除

/**
 * 真题描述：
 * 给定一个排序链表，删除所有重复的元素，使得每个元素只出现一次。
 *
 * 示例 1:
 * 输入: 1->1->2
 * 输出: 1->2
 * 示例 2:
 * 输入: 1->1->2->3->3
 * 输出: 1->2->3
 */
import { ListNode } from '../types'

const deleteDuplicates = (head: ListNode): ListNode => {
	// for (let cur = head; cur && cur.next; cur = cur.next!) {
	// 	if (cur.val === cur.next.val) {
	// 		cur.next = cur.next.next
	// 	}
	// }

	let cur: ListNode | null = head

	while (cur && cur.next) {
		if (cur.val === cur.next.val) {
			cur.next = cur.next.next
		} else {
			cur = cur.next
		}
	}

	return head
}
